package com.untour.im.common.enums;

import lombok.AccessLevel;
import lombok.AllArgsConstructor;
import lombok.Getter;

@Getter
@AllArgsConstructor(access = AccessLevel.PRIVATE)
public enum DeviceMultiLoginEnum {

    /**
     * 单端登录 仅允许 Windows、Web、Android 或 iOS 单端登录。
     */
    ONE(1,"DeviceMultiLoginEnum_ONE"),

    /**
     * 双端登录 允许 Windows、Mac、Android 或 iOS 单端登录，同时允许与 Web 端同时在线。
     */
    PC_MOBILE(2,"DeviceMultiLoginEnum_TWO"),

    /**
     * 三端登录 允许 Android 或 iOS 单端登录(互斥)，Windows 或者 Mac 单聊登录(互斥)，同时允许 Web 端同时在线
     */
    PC_MOBILE_WEB(3,"DeviceMultiLoginEnum_THREE"),

    /**
     * 多端同时在线 允许 Windows、Mac、Web、Android 或 iOS 多端或全端同时在线登录
     */
    ALL(4,"DeviceMultiLoginEnum_ALL");

    private int value;

    private String desc;

    public static DeviceMultiLoginEnum getByValue(int value) {
        for (DeviceMultiLoginEnum loginEnum : DeviceMultiLoginEnum.values()) {
            if(loginEnum.getValue() == value) return loginEnum;
        }
        return null;
    }
}
